package task6;

import task01.GuessGame;

import java.util.Scanner;

/**
 * @author Administrator
 * 用户测试类：提示信息
 */
public class UserTest {
    //定义对象，方便后续调用对象中的操作方法
    private static UserDao userDao=new UserDaoList();
    public static void main(String[] args) {
        /*循环操作：
        *     1、展示选择界面
        *     2、接受用户输入的选择项
        *     如果输入的是1：登陆提示界面
        *                    登录功能
        *     如果输入的是2：注册提示界面
        *                    注册功能（其他类完成）
        *     如果输入的是3：退出提示界面
        *                    退出功能*/

        Scanner sc=new Scanner(System.in);

        while (true){
            /*调用选择界面方法*/
            choose();
            //接受用户输入的选择
            int num=sc.nextInt();
            //根据用户的选择执行不同的提示界面
            switch (num){
                case 1:
                    loginFace();
                    break;
                case 2:
                    registerFace();
                    break;
                case 3:
                    System.out.println("欢迎下次光临");
                    //正常终止程序
                    System.exit(0);
                case 4:
                    showFace();
                    break;
                default:
                    System.out.println("输入有误");
                    break;
            }
        }
    }

    private static void showFace() {
        System.out.println("所有注册的用户的信息如下：");
        userDao.show();
    }

    /**
     *注册界面：1、提示信息（用户输入） 2、调用注册功能 3、提示成功
     */

    private static void registerFace() {
        System.out.println("----------注册界面----------");
        System.out.println("请输入用户名：");
        Scanner sc=new Scanner(System.in);
        String name=sc.nextLine();
        System.out.println("请输入密码：");
        String password=sc.nextLine();
        //调用注册功能
        User user=new User(name,password);
        userDao.register(user);
        System.out.println("注册成功");

    }
    private static void loginFace() {
        System.out.println("----------登陆界面----------");
        System.out.println("请输入用户名：");
        Scanner sc=new Scanner(System.in);
        String name =sc.nextLine();
        System.out.println("请输入密码：");
        String password=sc.nextLine();
        //调用登陆功能
        boolean flag=userDao.login(name,password);
        if (flag){
            System.out.println("登陆成功");
            GuessGame.start();
        }else {
            System.out.println("登录失败，用户名或密码错误");
        }
    }


    /**
     * 选择界面
     *
     */
    public static void choose() {
        System.out.println("----------欢迎光临---------");
        System.out.println("1 登陆");
        System.out.println("2 注册");
        System.out.println("3 退出");
        System.out.println("4 遍历");
        System.out.println("请输入你的选择");
    }
}
